import os
import shutil
import time
from pathlib import Path

from ScrapyObject.spiders.utils.bb import na


def list_files_with_pathlib(folder_path):
    try:
        folder = Path(folder_path)
        if not folder.exists():
            print(f"错误：目录 '{folder_path}' 不存在。")
            return []
        if not folder.is_dir():
            print(f"错误：'{folder_path}' 不是一个目录。")
            return []

        # 获取所有文件（不包括子目录）
        files = [file.name for file in folder.iterdir() if file.is_file()]
        return files
    except PermissionError:
        print(f"错误：没有权限访问目录 '{folder_path}'。")
        return []


if __name__ == '__main__':
    print('开始')
    timestamp = int(time.time())
    # 删除1中对应的文件
    folder_path = "C:\\1\\" + na
    if os.path.exists(folder_path):
        shutil.rmtree(folder_path)
        print(f"文件夹 '{folder_path}' 已成功删除。")
    else:
        print(f"文件夹 '{folder_path}' 不存在。")

    # 把2中的文件移动到4
    src_folder = "C:\\2\\" + na
    dst_folder = "C:\\大话资源\\4解析后的tga\\" + na
    if os.path.exists(src_folder) and os.path.isdir(src_folder):
        shutil.move(src_folder, dst_folder)
        print(f"文件夹已从 '{src_folder}' 移动到 '{dst_folder}'")
    else:
        print(f"源文件夹 '{src_folder}' 不存在或不是目录")

    # 把4中的文件移动到5
    folder_a = Path("C:\\4\\")
    folder_b = Path("C:\\大话资源\\5转换后的png\\" + na)
    folder_b.mkdir(exist_ok=True)
    print(f"已确保文件夹 '{folder_b}' 存在。")
    if not folder_a.exists():
        print(f"错误：文件夹 '{folder_a}' 不存在！")
    elif not folder_a.is_dir():
        print(f"错误：'{folder_a}' 不是一个文件夹！")
    else:
        for item in folder_a.iterdir():
            dst = folder_b / item.name
            shutil.move(str(item), str(dst))

    # 把6中的文件移动到6
    folder_c = Path("C:\\6\\")
    folder_d = Path("C:\\大话资源\\6合并后的png\\" + na)
    folder_d.mkdir(exist_ok=True)
    print(f"已确保文件夹 '{folder_d}' 存在。")
    if not folder_c.exists():
        print(f"错误：文件夹 '{folder_c}' 不存在！")
    elif not folder_c.is_dir():
        print(f"错误：'{folder_c}' 不是一个文件夹！")
    else:
        for item in folder_c.iterdir():
            dst = folder_d / item.name
            shutil.move(str(item), str(dst))

    endTime = int(time.time())
    print(str(endTime - timestamp))
    print('结束')
